Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-day vector-sticky-header-enabled" lang="de" dir="ltr"><head>
<meta charset="UTF-8">
<title>YEnc</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://de.wikipedia.org/wiki/YEnc"> <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.math.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link href="./_mw_/ext.gadget.citeRef.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.defaultPlainlinks.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonHide.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonLayout.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonStyle.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiDarkmode.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiResponsive.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.specialSearch.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-YEnc rootpage-YEnc skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">yEnc</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="de" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="de" dir="ltr"><p><b>yEnc</b> (<a href="Homophon" title="Homophon">Homophon</a> zu „why encode?“, zu deutsch: „warum kodieren?“) ist ein Kodierungsverfahren zur Übertragung von <a href="Bin%C3%A4rdatei" title="Binärdatei">Binärdateien</a> im <a href="Usenet" title="Usenet">Usenet</a> oder per <a href="E-Mail" title="E-Mail">E-Mail</a>. Der Name deutet an, dass auf aufwendige Kodierungsverfahren verzichtet wird, allerdings auf Kosten der Übertragungssicherheit.
</p>

<div class="mw-heading mw-heading2"><h2 id="Kodierung">Kodierung</h2></div>
<p>Das Verfahren besteht im Wesentlichen aus folgender Berechnungsvorschrift, die aus einem Eingabebyte <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle E}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>E</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle E}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/4232c9de2ee3eec0a9c0a19b15ab92daa6223f9b.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.776ex; height:2.176ex;" alt="{\displaystyle E}" loading="lazy"></span> ein Ausgabebyte <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle A}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>A</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle A}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/7daff47fa58cdfd29dc333def748ff5fa4c923e3.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.743ex; height:2.176ex;" alt="{\displaystyle A}" loading="lazy"></span> erzeugt:
</p>
<ul><li><span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle A=(E+42)\mod 256}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>A</mi>
<mo>=</mo>
<mo stretchy="false">(</mo>
<mi>E</mi>
<mo>+</mo>
<mn>42</mn>
<mo stretchy="false">)</mo>
<mspace width="1em"></mspace>
<mi>mod</mi>
<mspace width="thinmathspace"></mspace>
<mspace width="thinmathspace"></mspace>
<mn>256</mn>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle A=(E+42)\mod 256}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/e26fe5e5ace725d8437fb191c8e7c0e2e725227a.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:25.341ex; height:2.843ex;" alt="{\displaystyle A=(E+42)\mod 256}" loading="lazy"></span>.</li>
<li>Wenn <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle A}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>A</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle A}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/7daff47fa58cdfd29dc333def748ff5fa4c923e3.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.743ex; height:2.176ex;" alt="{\displaystyle A}" loading="lazy"></span> ein kritisches Zeichen wie 0&nbsp;(<a href="Nullzeichen" title="Nullzeichen">NUL</a>), 10&nbsp;(<a href="Zeilenvorschub" title="Zeilenvorschub">LF</a>), 13&nbsp;(<a href="Wagenr%C3%BCcklauf" title="Wagenrücklauf">CR</a>) und optional 9&nbsp;(TAB) oder das <a href="Escapezeichen" class="mw-redirect" title="Escapezeichen">Escapezeichen</a> 61 (<span style="font-family:monospace;">=</span>, Gleichheitszeichen) ist, so besteht die Ausgabe statt <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle A}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<mi>A</mi>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle A}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/7daff47fa58cdfd29dc333def748ff5fa4c923e3.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:1.743ex; height:2.176ex;" alt="{\displaystyle A}" loading="lazy"></span> aus dem Escapezeichen gefolgt von <span class="mwe-math-element mwe-math-element-inline"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle A'=(E+64)\mod 256}">
<semantics>
<mrow class="MJX-TeXAtom-ORD">
<mstyle displaystyle="true" scriptlevel="0">
<msup>
<mi>A</mi>
<mo>′</mo>
</msup>
<mo>=</mo>
<mo stretchy="false">(</mo>
<mi>E</mi>
<mo>+</mo>
<mn>64</mn>
<mo stretchy="false">)</mo>
<mspace width="1em"></mspace>
<mi>mod</mi>
<mspace width="thinmathspace"></mspace>
<mspace width="thinmathspace"></mspace>
<mn>256</mn>
</mstyle>
</mrow>
<annotation encoding="application/x-tex">{\displaystyle A'=(E+64)\mod 256}</annotation>
</semantics>
</math></span><img src="./_assets_/eb734a37dd21ce173a46342d1cc64c92/73a501f6879286793933ef7fd9c44af3755c38a2.svg" class="mwe-math-fallback-image-inline mw-invert skin-invert" aria-hidden="true" style="vertical-align: -0.838ex; width:26.026ex; height:3.009ex;" alt="{\displaystyle A'=(E+64)\mod 256}" loading="lazy"></span>.<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup></li></ul>
<p>Die Kodierung beruht demnach ähnlich wie das <a href="ROT13" title="ROT13">ROT13</a>-Verfahren auf einer <i>alphabetischen Rotation</i>, jedoch auf dem kompletten Wertebereich mit einer anderen Verschiebungskonstante und Escaping. Da nur für 4 oder 5 von 256 möglichen Eingabebytes ein zusätzliches Byte erforderlich ist, benötigt das Verfahren nur etwa ein bis zwei Prozent an zusätzlicher Datenmenge (Overhead), während bei anderen Kodierungsverfahren wie <a href="UUencode" title="UUencode">UUencode</a> oder <a href="Base64" title="Base64">Base64</a> die nur 6 Bit, also 64 von 256 möglichen Werten benutzen, etwa 33 bis 40 Prozent Overhead auftreten.
</p><p>Der eingeschränkte Wertebereich der anderen Verfahren gewährleistet allerdings die zuverlässige Übertragung über alle Kanäle, indem sie nur einen weit geringeren Teil aller möglichen Bytewerte als gültige Kodierungswerte unterstützen, was zusätzlich wieder zu einer, wenn auch ungenauen, Fehlererkennung genutzt werden kann. yEnc bietet hierfür die Möglichkeit, eine zuverlässigere <a href="Zyklische_Redundanzpr%C3%BCfung" title="Zyklische Redundanzprüfung">CRC32</a>-Prüfsumme anzugeben.
</p>
<div class="mw-heading mw-heading2"><h2 id="Nachteile">Nachteile</h2></div>
<p>Es existiert kein <a href="Request_for_Comments" title="Request for Comments">RFC</a> für yEnc, allerdings beschreibt die yEnc-Homepage eine rudimentäre Spezifikation und Syntax, die allerdings dem RFC&nbsp;2822<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> oder dem RFC&nbsp;2045<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> widerspricht, insbesondere indem es etliche <a href="Steuerzeichen" title="Steuerzeichen">Steuerzeichen</a> (mit den wenigen erwähnten Ausnahmen) als Teil der kodierten Nachricht erlaubt.
</p><p>Wie auch UUencode ermöglicht yEnc nicht die zuverlässige Erkennung von kodierten Abschnitten. Ferner wurde die Mehrzahl dieser Einschränkungen bereits Jahre zuvor durch <a href="Multipurpose_Internet_Mail_Extensions" title="Multipurpose Internet Mail Extensions">MIME</a> gelöst. Weiterhin sind nicht alle Transportwege im Netz 8-Bit-tauglich, was für yEnc zwingend erforderlich ist, da es fast den gesamten 8-bit-Wertebereich nutzt, so dass Datenverluste auftreten können.<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> Kritiker bemängeln die fehlende Kompatibilität von yEnc mit existierenden Standards.
</p><p>Trotz der Nachteile hat sich yEnc in Binärgruppen im Usenet stark verbreitet.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup> Genauso wie für UUencode existieren spezielle Programme, um Dateien in mehrere Usenet-Postings zu kodieren oder sie aus solchen zu dekodieren. Viele <a href="Newsreader_(Usenet)" title="Newsreader (Usenet)">Newsreader</a> unterstützen yEnc.
</p>
<div class="mw-heading mw-heading2"><h2 id="Weblinks">Weblinks</h2></div>
<ul><li><a rel="nofollow" class="external text" href="http://www.yenc.org/">yEnc-Homepage</a></li>
<li><a rel="nofollow" class="external text" href="http://www.yenc.org/yenc-draft.1.3.txt">Spezifikation des Verfahrens.</a> yenc.org</li>
<li><a rel="nofollow" class="external text" href="http://www.yproxy.com/faq41.html">The author of yProxy on yEnc.</a> yproxy.com</li>
<li><a rel="nofollow" class="external text" href="http://www.webutils.pl/yEnc">Online yEnc Encoder / Decoder.</a> webutils.pl</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Einzelnachweise">Einzelnachweise</h2></div>
<ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><a href="#cite_ref-1">↑</a></span> <span class="reference-text"><span class="cite">Jürgen Helbing: <a rel="nofollow" class="external text" href="http://www.yenc.org/yenc-draft.1.3.txt"><i>yEncode – A quick and dirty encoding for binaries v1.3.</i></a> 5.&nbsp;März 2002,<span class="Abrufdatum"> abgerufen am 22.&nbsp;Januar 2015</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&amp;rfr_id=info%3Asid%2Fde.wikipedia.org%3AYEnc&amp;rft.title=yEncode+%E2%80%93+A+quick+and+dirty+encoding+for+binaries+v1.3&amp;rft.description=yEncode+%E2%80%93+A+quick+and+dirty+encoding+for+binaries+v1.3&amp;rft.identifier=http%3A%2F%2Fwww.yenc.org%2Fyenc-draft.1.3.txt&amp;rft.creator=J%C3%BCrgen+Helbing&amp;rft.date=2002-03-05&amp;rft.language=en">&nbsp;</span></span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><a href="#cite_ref-2">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <style data-mw-deduplicate="TemplateStyles:r250917974">
/* start https://de.wikipedia.org/ */


.mw-parser-output .dewiki-iconexternal>a{background-position:center right!important;background-repeat:no-repeat!important}body.skin-minerva .mw-parser-output .dewiki-iconexternal>a{background-image:url("./_mw_/OOjs_UI_icon_external-link-ltr-progressive.svg")!important;background-size:10px!important;padding-right:13px!important}body.skin-timeless .mw-parser-output .dewiki-iconexternal>a,body.skin-monobook .mw-parser-output .dewiki-iconexternal>a{background-image:url("./_mw_/MediaWiki_external_link_icon.svg")!important;padding-right:13px!important}body.skin-vector .mw-parser-output .dewiki-iconexternal>a{background-image:url("./_mw_/Link.ernal-small-ltr-progressive.svg")!important;background-size:0.857em!important;padding-right:1em!important}


/* end https://de.wikipedia.org/ */
</style><span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc2822" class="extiw external" title="rfc:2822">2822</a></span></i>&nbsp;– <i><span lang="en">Internet Message Format</span></i>. April 2001 (englisch).</span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><a href="#cite_ref-3">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc2045" class="extiw external" title="rfc:2045">2045</a></span></i>&nbsp;– <i><span lang="en">Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies</span></i>. November 1996 (englisch).</span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><a href="#cite_ref-4">↑</a></span> <span class="reference-text"><span class="cite">Claus Färber: <a rel="nofollow" class="external text" href="https://web.archive.org/web/20090601062851/http://www.faerber.muc.de/temp/20020304-yenc-harmful.html"><i>yEnc considered harmful.</i></a> 6.&nbsp;April 2002, archiviert vom <span class="dewiki-iconexternal"><a class="external text" href="https://redirecter.toolforge.org/?url=http%3A%2F%2Fwww.faerber.muc.de%2Ftemp%2F20020304-yenc-harmful.html">Original</a></span> (nicht mehr online verfügbar) am <span style="white-space:nowrap;">1.&nbsp;Juni 2009</span><span>;</span><span class="Abrufdatum"> abgerufen am 3.&nbsp;Juni 2010</span>.</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&amp;rfr_id=info%3Asid%2Fde.wikipedia.org%3AYEnc&amp;rft.title=yEnc+considered+harmful&amp;rft.description=yEnc+considered+harmful&amp;rft.identifier=https%3A%2F%2Fweb.archive.org%2Fweb%2F20090601062851%2Fhttp%3A%2F%2Fwww.faerber.muc.de%2Ftemp%2F20020304-yenc-harmful.html&amp;rft.creator=Claus+F%C3%A4rber&amp;rft.date=2002-04-06&amp;rft.source=http://www.faerber.muc.de/temp/20020304-yenc-harmful.html">&nbsp;</span></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><a href="#cite_ref-5">↑</a></span> <span class="reference-text"><span class="cite"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20100418013429/http://www.newsrover.com/support_yenc.htm"><i>Support - yEnc File Attachment Support.</i></a> Archiviert vom <span class="dewiki-iconexternal"><a class="external text" href="https://redirecter.toolforge.org/?url=http%3A%2F%2Fwww.newsrover.com%2Fsupport_yenc.htm">Original</a></span> (nicht mehr online verfügbar) am <span style="white-space:nowrap;">18.&nbsp;April 2010</span><span>;</span><span class="Abrufdatum"> abgerufen am 3.&nbsp;Juni 2010</span>.</span> <small class="archiv-bot"><span class="wp_boppel noviewer" aria-hidden="true" role="presentation"><span typeof="mw:File"><span title="i"></span></span></span>&nbsp;<b>Info:</b> Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.</small><span style="display:none"><a rel="nofollow" class="external text" href="http://IABotmemento.invalid/http://www.newsrover.com/support_yenc.htm">@1</a></span><span style="display:none"><a rel="nofollow" class="external text" href="http://www.newsrover.com/support_yenc.htm">@2</a></span><span style="display:none">Vorlage:Webachiv/IABot/www.newsrover.com</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&amp;rfr_id=info%3Asid%2Fde.wikipedia.org%3AYEnc&amp;rft.title=Support+-+yEnc+File+Attachment+Support&amp;rft.description=Support+-+yEnc+File+Attachment+Support&amp;rft.identifier=https%3A%2F%2Fweb.archive.org%2Fweb%2F20100418013429%2Fhttp%3A%2F%2Fwww.newsrover.com%2Fsupport_yenc.htm&amp;rft.source=http://www.newsrover.com/support_yenc.htm">&nbsp;</span></span>
</li>
</ol></div><!--htdig_noindex--><div><div class="zim-footer">
Dieser Artikel wurde von <a class="external text" title="Zuletzt bearbeitet am 2024-06-18" href="https://de.wikipedia.org/wiki/?title=YEnc&amp;oldid=246028822">Wikipedia</a> herausgegeben. Der Text ist unter <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.de">Creative Commons Attribution-Share Alike 4.0</a> verfügbar, sofern nicht anders angegeben. Für die Mediendateien können zusätzliche Bedingungen gelten.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>

</body></html>